package bomberman.modelo.observadores;

import java.io.IOException;

import bomberman.modelo.Partida;
import bomberman.modelo.items.Timer;
import bomberman.vista.Dimensionador;
import bomberman.vista.items.VistaTimer;

public class ObservadorTimer implements IObservador {
  
  private Partida partida;
  
  public ObservadorTimer(Partida partida) {
    this.partida = partida;
  }
  
  @Override
  public void actualizar(Object arg) {
    if (!(this.partida.getGameLoop().getObjetosDibujables().contains(this.partida.getTraductor().get(arg)))) {
      try {
        this.partida.agregarVista(arg, new VistaTimer(new Dimensionador((Timer) arg)));
      } catch (IOException e) {
        e.printStackTrace();
      }
      return;
    }
    if (this.partida.getNivelActual().getBombita().contieneItem((Timer) arg)) {
      this.partida.retirarVista(arg);
      this.partida.agregarObjetoVivo(arg);
    }
  }
}
